<?xml version="1.0" encoding="UTF-8"?>
<dxl:DXLMessage xmlns:dxl="http://greenplum.com/dxl/2010/12/">
  <dxl:Comment><![CDATA[
  Objective: Filter quals which do not contain volatile functions and are not coming from the relational child
  of the filter should become one-time filter and the remaining quals should be filter. This should happen during
  expression to dxl translation of the filter to a result node.

  Setup:
  create table foo (a int, b int);
  create table bar (a int, b int);
  insert into foo select i, i from generate_series(1,10)i;
  insert into bar select i, i from generate_series(1,10)i;
  analyze;

  In the below query, there 3 are 3 projections, each with a qual, the should get translated as below.
  1. Projection column 1 qual: f1.b = f2.b => Contains columns not from the relational child for the filter, so it should become a One Time Filter: One-Time Filter: $0 = $1
  2. Projection column 2 qual: f1.a=random() and f1.a=2 => Qual containing random (i.e volatile) function should get converted to a Filter, and qual f1.a = 2 should get converted to a one timer filter. i.e (One-Time Filter: $2 = 2 and Filter: $2::double precision = random())
  3. Projection column 3 qual: b=f1.b) => It should become a Filter as it contains column b from the relational child of the filter. Filter: share0_ref3.b = $3
  pivotal=# explain with abc as (select foo.a, foo.b from foo, bar where foo.a=bar.a) select  (select 1 from abc where f1.b = f2.b limit 1), COALESCE((select 2 from abc where f1.a=random() and f1.a=2), 0), (select b from abc where b=f1.b) from foo f1, bar f2 where f1.b = f2.b;
                                                            QUERY PLAN
  ------------------------------------------------------------------------------------------------------------------------------
   Gather Motion 3:1  (slice6; segments: 3)  (cost=0.00..1852062876647.47 rows=11 width=12)
     ->  Sequence  (cost=0.00..1852062876647.47 rows=4 width=12)
           ->  Shared Scan (share slice:id 6:0)  (cost=0.00..862.00 rows=4 width=1)
                 ->  Materialize  (cost=0.00..862.00 rows=4 width=1)
                       ->  Hash Join  (cost=0.00..862.00 rows=4 width=8)
                             Hash Cond: public.foo.a = public.bar.a
                             ->  Table Scan on foo  (cost=0.00..431.00 rows=4 width=8)
                             ->  Hash  (cost=431.00..431.00 rows=4 width=4)
                                   ->  Table Scan on bar  (cost=0.00..431.00 rows=4 width=4)
           ->  Result  (cost=0.00..1852062875785.47 rows=4 width=12)
                 ->  Hash Join  (cost=0.00..862.00 rows=4 width=12)
                       Hash Cond: public.foo.b = public.bar.b
                       ->  Redistribute Motion 3:3  (slice1; segments: 3)  (cost=0.00..431.00 rows=4 width=8)
                             Hash Key: public.foo.b
                             ->  Table Scan on foo  (cost=0.00..431.00 rows=4 width=8)
                       ->  Hash  (cost=431.00..431.00 rows=4 width=4)
                             ->  Redistribute Motion 3:3  (slice2; segments: 3)  (cost=0.00..431.00 rows=4 width=4)
                                   Hash Key: public.bar.b
                                   ->  Table Scan on bar  (cost=0.00..431.00 rows=4 width=4)
                 SubPlan 3
                   ->  Result  (cost=0.00..431.66 rows=1 width=4)
                         Filter: share0_ref3.b = $3
                         ->  Materialize  (cost=0.00..431.00 rows=11 width=4)
                               ->  Broadcast Motion 3:3  (slice5; segments: 3)  (cost=0.00..431.00 rows=11 width=4)
                                     ->  Result  (cost=0.00..431.00 rows=4 width=4)
                                           ->  Shared Scan (share slice:id 5:0)  (cost=0.00..431.00 rows=4 width=4)
                 SubPlan 2
                   ->  Result  (cost=0.00..431.33 rows=3 width=4)
                         ->  Result  (cost=0.00..431.33 rows=3 width=1)
                               One-Time Filter: $2 = 2
                               Filter: $2::double precision = random()
                               ->  Materialize  (cost=0.00..431.00 rows=11 width=1)
                                     ->  Broadcast Motion 3:3  (slice4; segments: 3)  (cost=0.00..431.00 rows=11 width=1)
                                           ->  Result  (cost=0.00..431.00 rows=4 width=1)
                                                 ->  Shared Scan (share slice:id 4:0)  (cost=0.00..431.00 rows=4 width=1)
                 SubPlan 1
                   ->  Result  (cost=0.00..431.01 rows=1 width=4)
                         ->  Limit  (cost=0.00..431.01 rows=1 width=1)
                               ->  Result  (cost=0.00..431.01 rows=5 width=1)
                                     One-Time Filter: $0 = $1
                                     ->  Materialize  (cost=0.00..431.00 rows=11 width=1)
                                           ->  Broadcast Motion 3:3  (slice3; segments: 3)  (cost=0.00..431.00 rows=11 width=1)
                                                 ->  Result  (cost=0.00..431.00 rows=4 width=1)
                                                       ->  Shared Scan (share slice:id 3:0)  (cost=0.00..431.00 rows=4 width=1)
   Optimizer status: PQO version 3.9.0
  ]]>
  </dxl:Comment>
  <dxl:Thread Id="0">
    <dxl:OptimizerConfig>
      <dxl:EnumeratorConfig Id="0" PlanSamples="0" CostThreshold="0"/>
      <dxl:StatisticsConfig DampingFactorFilter="0.750000" DampingFactorJoin="0.000000" DampingFactorGroupBy="0.750000" MaxStatsBuckets="100"/>
      <dxl:CTEConfig CTEInliningCutoff="0"/>
      <dxl:WindowOids RowNumber="7000" Rank="7001"/>
      <dxl:CostModelConfig CostModelType="1" SegmentsForCosting="3">
        <dxl:CostParams>
          <dxl:CostParam Name="NLJFactor" Value="1024.000000" LowerBound="1023.500000" UpperBound="1024.500000"/>
        </dxl:CostParams>
      </dxl:CostModelConfig>
      <dxl:Hint JoinArityForAssociativityCommutativity="18" ArrayExpansionThreshold="100" JoinOrderDynamicProgThreshold="10" BroadcastThreshold="10000000" EnforceConstraintsOnDML="false"/>
      <dxl:TraceFlags Value="102001,102002,102003,102074,102120,102144,103001,103014,103015,103022,103027,103033,104003,104004,104005,105000"/>
    </dxl:OptimizerConfig>
    <dxl:Metadata SystemIds="0.GPDB">
      <dxl:RelationStatistics Mdid="2.16385.1.0" Name="foo" Rows="10.000000" EmptyRelation="false"/>
      <dxl:Relation Mdid="6.16385.1.0" Name="foo" IsTemporary="false" HasOids="false" StorageType="Heap" DistributionPolicy="Hash" DistributionColumns="0" Keys="8,2" NumberLeafPartitions="0">
        <dxl:Columns>
          <dxl:Column Name="a" Attno="1" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="b" Attno="2" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="ctid" Attno="-1" Mdid="0.27.1.0" Nullable="false" ColWidth="6">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="xmin" Attno="-3" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="cmin" Attno="-4" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="xmax" Attno="-5" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="cmax" Attno="-6" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="tableoid" Attno="-7" Mdid="0.26.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="gp_segment_id" Attno="-8" Mdid="0.23.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
        </dxl:Columns>
        <dxl:IndexInfoList/>
        <dxl:Triggers/>
        <dxl:CheckConstraints/>
      </dxl:Relation>
      <dxl:RelationStatistics Mdid="2.16388.1.0" Name="bar" Rows="10.000000" EmptyRelation="false"/>
      <dxl:Relation Mdid="6.16388.1.0" Name="bar" IsTemporary="false" HasOids="false" StorageType="Heap" DistributionPolicy="Hash" DistributionColumns="0" Keys="8,2" NumberLeafPartitions="0">
        <dxl:Columns>
          <dxl:Column Name="a" Attno="1" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="b" Attno="2" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="ctid" Attno="-1" Mdid="0.27.1.0" Nullable="false" ColWidth="6">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="xmin" Attno="-3" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="cmin" Attno="-4" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="xmax" Attno="-5" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="cmax" Attno="-6" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="tableoid" Attno="-7" Mdid="0.26.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
          <dxl:Column Name="gp_segment_id" Attno="-8" Mdid="0.23.1.0" Nullable="false" ColWidth="4">
            <dxl:DefaultValue/>
          </dxl:Column>
        </dxl:Columns>
        <dxl:IndexInfoList/>
        <dxl:Triggers/>
        <dxl:CheckConstraints/>
      </dxl:Relation>
      <dxl:Type Mdid="0.16.1.0" Name="bool" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="1" PassByValue="true">
        <dxl:EqualityOp Mdid="0.91.1.0"/>
        <dxl:InequalityOp Mdid="0.85.1.0"/>
        <dxl:LessThanOp Mdid="0.58.1.0"/>
        <dxl:LessThanEqualsOp Mdid="0.1694.1.0"/>
        <dxl:GreaterThanOp Mdid="0.59.1.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.1695.1.0"/>
        <dxl:ComparisonOp Mdid="0.1693.1.0"/>
        <dxl:ArrayType Mdid="0.1000.1.0"/>
        <dxl:MinAgg Mdid="0.0.0.0"/>
        <dxl:MaxAgg Mdid="0.0.0.0"/>
        <dxl:AvgAgg Mdid="0.0.0.0"/>
        <dxl:SumAgg Mdid="0.0.0.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:Type Mdid="0.20.1.0" Name="Int8" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="8" PassByValue="true">
        <dxl:EqualityOp Mdid="0.410.1.0"/>
        <dxl:InequalityOp Mdid="0.411.1.0"/>
        <dxl:LessThanOp Mdid="0.412.1.0"/>
        <dxl:LessThanEqualsOp Mdid="0.414.1.0"/>
        <dxl:GreaterThanOp Mdid="0.413.1.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.415.1.0"/>
        <dxl:ComparisonOp Mdid="0.351.1.0"/>
        <dxl:ArrayType Mdid="0.1016.1.0"/>
        <dxl:MinAgg Mdid="0.2131.1.0"/>
        <dxl:MaxAgg Mdid="0.2115.1.0"/>
        <dxl:AvgAgg Mdid="0.2100.1.0"/>
        <dxl:SumAgg Mdid="0.2107.1.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:Type Mdid="0.23.1.0" Name="int4" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
        <dxl:EqualityOp Mdid="0.96.1.0"/>
        <dxl:InequalityOp Mdid="0.518.1.0"/>
        <dxl:LessThanOp Mdid="0.97.1.0"/>
        <dxl:LessThanEqualsOp Mdid="0.523.1.0"/>
        <dxl:GreaterThanOp Mdid="0.521.1.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.525.1.0"/>
        <dxl:ComparisonOp Mdid="0.351.1.0"/>
        <dxl:ArrayType Mdid="0.1007.1.0"/>
        <dxl:MinAgg Mdid="0.2132.1.0"/>
        <dxl:MaxAgg Mdid="0.2116.1.0"/>
        <dxl:AvgAgg Mdid="0.2101.1.0"/>
        <dxl:SumAgg Mdid="0.2108.1.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:ColumnStatistics Mdid="1.16385.1.0.1" Name="b" Width="4.000000" NullFreq="0.000000" NdvRemain="0.000000" FreqRemain="0.000000" ColStatsMissing="false">
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="1"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="2"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="2"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="3"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="3"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="4"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="4"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="5"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="5"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="6"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="6"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="7"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="7"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="8"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="8"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="9"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="9"/>
          <dxl:UpperBound Closed="true" TypeMdid="0.23.1.0" Value="10"/>
        </dxl:StatsBucket>
      </dxl:ColumnStatistics>
      <dxl:ColumnStatistics Mdid="1.16385.1.0.0" Name="a" Width="4.000000" NullFreq="0.000000" NdvRemain="0.000000" FreqRemain="0.000000" ColStatsMissing="false">
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="1"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="2"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="2"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="3"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="3"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="4"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="4"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="5"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="5"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="6"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="6"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="7"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="7"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="8"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="8"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="9"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="9"/>
          <dxl:UpperBound Closed="true" TypeMdid="0.23.1.0" Value="10"/>
        </dxl:StatsBucket>
      </dxl:ColumnStatistics>
      <dxl:Type Mdid="0.26.1.0" Name="oid" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
        <dxl:EqualityOp Mdid="0.607.1.0"/>
        <dxl:InequalityOp Mdid="0.608.1.0"/>
        <dxl:LessThanOp Mdid="0.609.1.0"/>
        <dxl:LessThanEqualsOp Mdid="0.611.1.0"/>
        <dxl:GreaterThanOp Mdid="0.610.1.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.612.1.0"/>
        <dxl:ComparisonOp Mdid="0.356.1.0"/>
        <dxl:ArrayType Mdid="0.1028.1.0"/>
        <dxl:MinAgg Mdid="0.2118.1.0"/>
        <dxl:MaxAgg Mdid="0.2134.1.0"/>
        <dxl:AvgAgg Mdid="0.0.0.0"/>
        <dxl:SumAgg Mdid="0.0.0.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:Type Mdid="0.27.1.0" Name="tid" IsRedistributable="true" IsHashable="false" IsMergeJoinable="false" IsComposite="false" IsFixedLength="true" Length="6" PassByValue="false">
        <dxl:EqualityOp Mdid="0.387.1.0"/>
        <dxl:InequalityOp Mdid="0.402.1.0"/>
        <dxl:LessThanOp Mdid="0.2799.1.0"/>
        <dxl:LessThanEqualsOp Mdid="0.2801.1.0"/>
        <dxl:GreaterThanOp Mdid="0.2800.1.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.2802.1.0"/>
        <dxl:ComparisonOp Mdid="0.2794.1.0"/>
        <dxl:ArrayType Mdid="0.1010.1.0"/>
        <dxl:MinAgg Mdid="0.2798.1.0"/>
        <dxl:MaxAgg Mdid="0.2797.1.0"/>
        <dxl:AvgAgg Mdid="0.0.0.0"/>
        <dxl:SumAgg Mdid="0.0.0.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:Type Mdid="0.29.1.0" Name="cid" IsRedistributable="false" IsHashable="true" IsMergeJoinable="false" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
        <dxl:EqualityOp Mdid="0.385.1.0"/>
        <dxl:InequalityOp Mdid="0.0.0.0"/>
        <dxl:LessThanOp Mdid="0.0.0.0"/>
        <dxl:LessThanEqualsOp Mdid="0.0.0.0"/>
        <dxl:GreaterThanOp Mdid="0.0.0.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.0.0.0"/>
        <dxl:ComparisonOp Mdid="0.0.0.0"/>
        <dxl:ArrayType Mdid="0.1012.1.0"/>
        <dxl:MinAgg Mdid="0.0.0.0"/>
        <dxl:MaxAgg Mdid="0.0.0.0"/>
        <dxl:AvgAgg Mdid="0.0.0.0"/>
        <dxl:SumAgg Mdid="0.0.0.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:Type Mdid="0.28.1.0" Name="xid" IsRedistributable="false" IsHashable="true" IsMergeJoinable="false" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
        <dxl:EqualityOp Mdid="0.352.1.0"/>
        <dxl:InequalityOp Mdid="0.0.0.0"/>
        <dxl:LessThanOp Mdid="0.0.0.0"/>
        <dxl:LessThanEqualsOp Mdid="0.0.0.0"/>
        <dxl:GreaterThanOp Mdid="0.0.0.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.0.0.0"/>
        <dxl:ComparisonOp Mdid="0.0.0.0"/>
        <dxl:ArrayType Mdid="0.1011.1.0"/>
        <dxl:MinAgg Mdid="0.0.0.0"/>
        <dxl:MaxAgg Mdid="0.0.0.0"/>
        <dxl:AvgAgg Mdid="0.0.0.0"/>
        <dxl:SumAgg Mdid="0.0.0.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:GPDBScalarOp Mdid="0.670.1.0" Name="=" ComparisonType="Eq" ReturnsNullOnNullInput="true">
        <dxl:LeftType Mdid="0.701.1.0"/>
        <dxl:RightType Mdid="0.701.1.0"/>
        <dxl:ResultType Mdid="0.16.1.0"/>
        <dxl:OpFunc Mdid="0.293.1.0"/>
        <dxl:Commutator Mdid="0.670.1.0"/>
        <dxl:InverseOp Mdid="0.671.1.0"/>
        <dxl:Opfamilies>
          <dxl:Opfamily Mdid="0.1970.1.0"/>
          <dxl:Opfamily Mdid="0.1971.1.0"/>
          <dxl:Opfamily Mdid="0.3024.1.0"/>
        </dxl:Opfamilies>
      </dxl:GPDBScalarOp>
      <dxl:ColumnStatistics Mdid="1.16388.1.0.1" Name="b" Width="4.000000" NullFreq="0.000000" NdvRemain="0.000000" FreqRemain="0.000000" ColStatsMissing="false">
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="1"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="2"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="2"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="3"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="3"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="4"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="4"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="5"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="5"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="6"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="6"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="7"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="7"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="8"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="8"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="9"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="9"/>
          <dxl:UpperBound Closed="true" TypeMdid="0.23.1.0" Value="10"/>
        </dxl:StatsBucket>
      </dxl:ColumnStatistics>
      <dxl:ColumnStatistics Mdid="1.16388.1.0.0" Name="a" Width="4.000000" NullFreq="0.000000" NdvRemain="0.000000" FreqRemain="0.000000" ColStatsMissing="false">
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="1"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="2"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="2"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="3"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="3"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="4"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="4"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="5"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="5"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="6"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="6"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="7"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="7"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="8"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="8"/>
          <dxl:UpperBound Closed="false" TypeMdid="0.23.1.0" Value="9"/>
        </dxl:StatsBucket>
        <dxl:StatsBucket Frequency="0.111111" DistinctValues="1.111111">
          <dxl:LowerBound Closed="true" TypeMdid="0.23.1.0" Value="9"/>
          <dxl:UpperBound Closed="true" TypeMdid="0.23.1.0" Value="10"/>
        </dxl:StatsBucket>
      </dxl:ColumnStatistics>
      <dxl:Type Mdid="0.701.1.0" Name="float8" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="8" PassByValue="true">
        <dxl:EqualityOp Mdid="0.670.1.0"/>
        <dxl:InequalityOp Mdid="0.671.1.0"/>
        <dxl:LessThanOp Mdid="0.672.1.0"/>
        <dxl:LessThanEqualsOp Mdid="0.673.1.0"/>
        <dxl:GreaterThanOp Mdid="0.674.1.0"/>
        <dxl:GreaterThanEqualsOp Mdid="0.675.1.0"/>
        <dxl:ComparisonOp Mdid="0.355.1.0"/>
        <dxl:ArrayType Mdid="0.1022.1.0"/>
        <dxl:MinAgg Mdid="0.2136.1.0"/>
        <dxl:MaxAgg Mdid="0.2120.1.0"/>
        <dxl:AvgAgg Mdid="0.2105.1.0"/>
        <dxl:SumAgg Mdid="0.2111.1.0"/>
        <dxl:CountAgg Mdid="0.2147.1.0"/>
      </dxl:Type>
      <dxl:GPDBFunc Mdid="0.316.1.0" Name="float8" ReturnsSet="false" Stability="Immutable" DataAccess="NoSQL" IsStrict="true">
        <dxl:ResultType Mdid="0.701.1.0"/>
      </dxl:GPDBFunc>
      <dxl:GPDBFunc Mdid="0.1598.1.0" Name="random" ReturnsSet="false" Stability="Volatile" DataAccess="NoSQL" IsStrict="true">
        <dxl:ResultType Mdid="0.701.1.0"/>
      </dxl:GPDBFunc>
      <dxl:MDCast Mdid="3.23.1.0;23.1.0" Name="int4" BinaryCoercible="true" SourceTypeId="0.23.1.0" DestinationTypeId="0.23.1.0" CastFuncId="0.0.0.0" CoercePathType="0"/>
      <dxl:GPDBScalarOp Mdid="0.96.1.0" Name="=" ComparisonType="Eq" ReturnsNullOnNullInput="true">
        <dxl:LeftType Mdid="0.23.1.0"/>
        <dxl:RightType Mdid="0.23.1.0"/>
        <dxl:ResultType Mdid="0.16.1.0"/>
        <dxl:OpFunc Mdid="0.65.1.0"/>
        <dxl:Commutator Mdid="0.96.1.0"/>
        <dxl:InverseOp Mdid="0.518.1.0"/>
        <dxl:Opfamilies>
          <dxl:Opfamily Mdid="0.1976.1.0"/>
          <dxl:Opfamily Mdid="0.1977.1.0"/>
          <dxl:Opfamily Mdid="0.3027.1.0"/>
        </dxl:Opfamilies>
      </dxl:GPDBScalarOp>
      <dxl:MDCast Mdid="3.23.1.0;701.1.0" Name="float8" BinaryCoercible="false" SourceTypeId="0.23.1.0" DestinationTypeId="0.701.1.0" CastFuncId="0.316.1.0" CoercePathType="1"/>
    </dxl:Metadata>
    <dxl:Query>
      <dxl:OutputColumns>
        <dxl:Ident ColId="40" ColName="?column?" TypeMdid="0.23.1.0"/>
        <dxl:Ident ColId="44" ColName="coalesce" TypeMdid="0.23.1.0"/>
        <dxl:Ident ColId="47" ColName="?column?" TypeMdid="0.23.1.0"/>
      </dxl:OutputColumns>
      <dxl:CTEList>
        <dxl:LogicalCTEProducer CTEId="1" Columns="1,2">
          <dxl:LogicalJoin JoinType="Inner">
            <dxl:LogicalGet>
              <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
                <dxl:Columns>
                  <dxl:Column ColId="1" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="2" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                  <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                  <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                </dxl:Columns>
              </dxl:TableDescriptor>
            </dxl:LogicalGet>
            <dxl:LogicalGet>
              <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
                <dxl:Columns>
                  <dxl:Column ColId="10" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="11" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="12" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                  <dxl:Column ColId="13" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="14" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="15" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="16" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="17" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                  <dxl:Column ColId="18" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                </dxl:Columns>
              </dxl:TableDescriptor>
            </dxl:LogicalGet>
            <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
              <dxl:Ident ColId="1" ColName="a" TypeMdid="0.23.1.0"/>
              <dxl:Ident ColId="10" ColName="a" TypeMdid="0.23.1.0"/>
            </dxl:Comparison>
          </dxl:LogicalJoin>
        </dxl:LogicalCTEProducer>
      </dxl:CTEList>
      <dxl:LogicalCTEAnchor CTEId="1">
        <dxl:LogicalProject>
          <dxl:ProjList>
            <dxl:ProjElem ColId="40" Alias="?column?">
              <dxl:ScalarSubquery ColId="39">
                <dxl:LogicalLimit>
                  <dxl:SortingColumnList/>
                  <dxl:LimitCount>
                    <dxl:ConstValue TypeMdid="0.20.1.0" Value="1"/>
                  </dxl:LimitCount>
                  <dxl:LimitOffset/>
                  <dxl:LogicalProject>
                    <dxl:ProjList>
                      <dxl:ProjElem ColId="39" Alias="?column?">
                        <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
                      </dxl:ProjElem>
                    </dxl:ProjList>
                    <dxl:LogicalSelect>
                      <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                        <dxl:Ident ColId="20" ColName="b" TypeMdid="0.23.1.0"/>
                        <dxl:Ident ColId="29" ColName="b" TypeMdid="0.23.1.0"/>
                      </dxl:Comparison>
                      <dxl:LogicalCTEConsumer CTEId="1" Columns="37,38"/>
                    </dxl:LogicalSelect>
                  </dxl:LogicalProject>
                </dxl:LogicalLimit>
              </dxl:ScalarSubquery>
            </dxl:ProjElem>
            <dxl:ProjElem ColId="44" Alias="coalesce">
              <dxl:Coalesce TypeMdid="0.23.1.0">
                <dxl:ScalarSubquery ColId="43">
                  <dxl:LogicalProject>
                    <dxl:ProjList>
                      <dxl:ProjElem ColId="43" Alias="?column?">
                        <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
                      </dxl:ProjElem>
                    </dxl:ProjList>
                    <dxl:LogicalSelect>
                      <dxl:And>
                        <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.670.1.0">
                          <dxl:FuncExpr FuncId="0.316.1.0" FuncRetSet="false" TypeMdid="0.701.1.0">
                            <dxl:Ident ColId="19" ColName="a" TypeMdid="0.23.1.0"/>
                          </dxl:FuncExpr>
                          <dxl:FuncExpr FuncId="0.1598.1.0" FuncRetSet="false" TypeMdid="0.701.1.0"/>
                        </dxl:Comparison>
                        <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                          <dxl:Ident ColId="19" ColName="a" TypeMdid="0.23.1.0"/>
                          <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
                        </dxl:Comparison>
                      </dxl:And>
                      <dxl:LogicalCTEConsumer CTEId="1" Columns="41,42"/>
                    </dxl:LogicalSelect>
                  </dxl:LogicalProject>
                </dxl:ScalarSubquery>
                <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
              </dxl:Coalesce>
            </dxl:ProjElem>
            <dxl:ProjElem ColId="47" Alias="?column?">
              <dxl:ScalarSubquery ColId="46">
                <dxl:LogicalSelect>
                  <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                    <dxl:Ident ColId="46" ColName="b" TypeMdid="0.23.1.0"/>
                    <dxl:Ident ColId="20" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:Comparison>
                  <dxl:LogicalCTEConsumer CTEId="1" Columns="45,46"/>
                </dxl:LogicalSelect>
              </dxl:ScalarSubquery>
            </dxl:ProjElem>
          </dxl:ProjList>
          <dxl:LogicalJoin JoinType="Inner">
            <dxl:LogicalGet>
              <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
                <dxl:Columns>
                  <dxl:Column ColId="19" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="20" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="21" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                  <dxl:Column ColId="22" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="23" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="24" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="25" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="26" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                  <dxl:Column ColId="27" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                </dxl:Columns>
              </dxl:TableDescriptor>
            </dxl:LogicalGet>
            <dxl:LogicalGet>
              <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
                <dxl:Columns>
                  <dxl:Column ColId="28" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="29" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
                  <dxl:Column ColId="30" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                  <dxl:Column ColId="31" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="32" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="33" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                  <dxl:Column ColId="34" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                  <dxl:Column ColId="35" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                  <dxl:Column ColId="36" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                </dxl:Columns>
              </dxl:TableDescriptor>
            </dxl:LogicalGet>
            <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
              <dxl:Ident ColId="20" ColName="b" TypeMdid="0.23.1.0"/>
              <dxl:Ident ColId="29" ColName="b" TypeMdid="0.23.1.0"/>
            </dxl:Comparison>
          </dxl:LogicalJoin>
        </dxl:LogicalProject>
      </dxl:LogicalCTEAnchor>
    </dxl:Query>
    <dxl:Plan Id="0" SpaceSize="616">
      <dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
        <dxl:Properties>
          <dxl:Cost StartupCost="0" TotalCost="1852062876647.470947" Rows="10.000001" Width="12"/>
        </dxl:Properties>
        <dxl:ProjList>
          <dxl:ProjElem ColId="55" Alias="?column?">
            <dxl:Ident ColId="55" ColName="?column?" TypeMdid="0.23.1.0"/>
          </dxl:ProjElem>
          <dxl:ProjElem ColId="75" Alias="coalesce">
            <dxl:Ident ColId="75" ColName="coalesce" TypeMdid="0.23.1.0"/>
          </dxl:ProjElem>
          <dxl:ProjElem ColId="94" Alias="?column?">
            <dxl:Ident ColId="94" ColName="?column?" TypeMdid="0.23.1.0"/>
          </dxl:ProjElem>
        </dxl:ProjList>
        <dxl:Filter/>
        <dxl:SortingColumnList/>
        <dxl:Sequence>
          <dxl:Properties>
            <dxl:Cost StartupCost="0" TotalCost="1852062876647.470459" Rows="10.000001" Width="12"/>
          </dxl:Properties>
          <dxl:ProjList>
            <dxl:ProjElem ColId="55" Alias="?column?">
              <dxl:Ident ColId="55" ColName="?column?" TypeMdid="0.23.1.0"/>
            </dxl:ProjElem>
            <dxl:ProjElem ColId="75" Alias="coalesce">
              <dxl:Ident ColId="75" ColName="coalesce" TypeMdid="0.23.1.0"/>
            </dxl:ProjElem>
            <dxl:ProjElem ColId="94" Alias="?column?">
              <dxl:Ident ColId="94" ColName="?column?" TypeMdid="0.23.1.0"/>
            </dxl:ProjElem>
          </dxl:ProjList>
          <dxl:CTEProducer CTEId="0" Columns="0,1">
            <dxl:Properties>
              <dxl:Cost StartupCost="0" TotalCost="862.001542" Rows="10.000001" Width="1"/>
            </dxl:Properties>
            <dxl:ProjList>
              <dxl:ProjElem ColId="0" Alias="a">
                <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
              </dxl:ProjElem>
              <dxl:ProjElem ColId="1" Alias="b">
                <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
              </dxl:ProjElem>
            </dxl:ProjList>
            <dxl:HashJoin JoinType="Inner">
              <dxl:Properties>
                <dxl:Cost StartupCost="0" TotalCost="862.001539" Rows="10.000001" Width="8"/>
              </dxl:Properties>
              <dxl:ProjList>
                <dxl:ProjElem ColId="0" Alias="a">
                  <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
                </dxl:ProjElem>
                <dxl:ProjElem ColId="1" Alias="b">
                  <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
                </dxl:ProjElem>
              </dxl:ProjList>
              <dxl:Filter/>
              <dxl:JoinFilter/>
              <dxl:HashCondList>
                <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                  <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
                  <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
                </dxl:Comparison>
              </dxl:HashCondList>
              <dxl:TableScan>
                <dxl:Properties>
                  <dxl:Cost StartupCost="0" TotalCost="431.000070" Rows="10.000000" Width="8"/>
                </dxl:Properties>
                <dxl:ProjList>
                  <dxl:ProjElem ColId="0" Alias="a">
                    <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
                  </dxl:ProjElem>
                  <dxl:ProjElem ColId="1" Alias="b">
                    <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:ProjElem>
                </dxl:ProjList>
                <dxl:Filter/>
                <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
                  <dxl:Columns>
                    <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                    <dxl:Column ColId="1" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
                    <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                    <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                    <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                    <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                    <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                    <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                    <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                  </dxl:Columns>
                </dxl:TableDescriptor>
              </dxl:TableScan>
              <dxl:TableScan>
                <dxl:Properties>
                  <dxl:Cost StartupCost="0" TotalCost="431.000070" Rows="10.000000" Width="4"/>
                </dxl:Properties>
                <dxl:ProjList>
                  <dxl:ProjElem ColId="9" Alias="a">
                    <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
                  </dxl:ProjElem>
                </dxl:ProjList>
                <dxl:Filter/>
                <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
                  <dxl:Columns>
                    <dxl:Column ColId="9" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                    <dxl:Column ColId="11" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                    <dxl:Column ColId="12" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                    <dxl:Column ColId="13" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                    <dxl:Column ColId="14" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                    <dxl:Column ColId="15" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                    <dxl:Column ColId="16" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                    <dxl:Column ColId="17" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                  </dxl:Columns>
                </dxl:TableDescriptor>
              </dxl:TableScan>
            </dxl:HashJoin>
          </dxl:CTEProducer>
          <dxl:Result>
            <dxl:Properties>
              <dxl:Cost StartupCost="0" TotalCost="1852062875785.468994" Rows="10.000001" Width="12"/>
            </dxl:Properties>
            <dxl:ProjList>
              <dxl:ProjElem ColId="55" Alias="?column?">
                <dxl:SubPlan TypeMdid="0.23.1.0" SubPlanType="ScalarSubPlan">
                  <dxl:TestExpr/>
                  <dxl:ParamList>
                    <dxl:Param ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                    <dxl:Param ColId="28" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:ParamList>
                  <dxl:Result>
                    <dxl:Properties>
                      <dxl:Cost StartupCost="0" TotalCost="431.006782" Rows="3.000000" Width="4"/>
                    </dxl:Properties>
                    <dxl:ProjList>
                      <dxl:ProjElem ColId="54" Alias="?column?">
                        <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
                      </dxl:ProjElem>
                    </dxl:ProjList>
                    <dxl:Filter/>
                    <dxl:OneTimeFilter/>
                    <dxl:Limit>
                      <dxl:Properties>
                        <dxl:Cost StartupCost="0" TotalCost="431.006778" Rows="3.000000" Width="1"/>
                      </dxl:Properties>
                      <dxl:ProjList/>
                      <dxl:Result>
                        <dxl:Properties>
                          <dxl:Cost StartupCost="0" TotalCost="431.006777" Rows="12.000001" Width="1"/>
                        </dxl:Properties>
                        <dxl:ProjList/>
                        <dxl:Filter/>
                        <dxl:OneTimeFilter>
                          <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                            <dxl:Ident ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                            <dxl:Ident ColId="28" ColName="b" TypeMdid="0.23.1.0"/>
                          </dxl:Comparison>
                        </dxl:OneTimeFilter>
                        <dxl:Materialize Eager="true">
                          <dxl:Properties>
                            <dxl:Cost StartupCost="0" TotalCost="431.000197" Rows="30.000003" Width="1"/>
                          </dxl:Properties>
                          <dxl:ProjList/>
                          <dxl:Filter/>
                          <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
                            <dxl:Properties>
                              <dxl:Cost StartupCost="0" TotalCost="431.000187" Rows="30.000003" Width="1"/>
                            </dxl:Properties>
                            <dxl:ProjList/>
                            <dxl:Filter/>
                            <dxl:SortingColumnList/>
                            <dxl:Result>
                              <dxl:Properties>
                                <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="10.000001" Width="1"/>
                              </dxl:Properties>
                              <dxl:ProjList/>
                              <dxl:Filter/>
                              <dxl:OneTimeFilter/>
                              <dxl:CTEConsumer CTEId="0" Columns="36,37">
                                <dxl:Properties>
                                  <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="10.000001" Width="1"/>
                                </dxl:Properties>
                                <dxl:ProjList>
                                  <dxl:ProjElem ColId="36" Alias="a">
                                    <dxl:Ident ColId="36" ColName="a" TypeMdid="0.23.1.0"/>
                                  </dxl:ProjElem>
                                  <dxl:ProjElem ColId="37" Alias="b">
                                    <dxl:Ident ColId="37" ColName="b" TypeMdid="0.23.1.0"/>
                                  </dxl:ProjElem>
                                </dxl:ProjList>
                              </dxl:CTEConsumer>
                            </dxl:Result>
                          </dxl:BroadcastMotion>
                        </dxl:Materialize>
                      </dxl:Result>
                      <dxl:LimitCount>
                        <dxl:ConstValue TypeMdid="0.20.1.0" Value="1"/>
                      </dxl:LimitCount>
                      <dxl:LimitOffset>
                        <dxl:ConstValue TypeMdid="0.20.1.0" Value="0"/>
                      </dxl:LimitOffset>
                    </dxl:Limit>
                  </dxl:Result>
                </dxl:SubPlan>
              </dxl:ProjElem>
              <dxl:ProjElem ColId="75" Alias="coalesce">
                <dxl:Coalesce TypeMdid="0.23.1.0">
                  <dxl:SubPlan TypeMdid="0.23.1.0" SubPlanType="ScalarSubPlan">
                    <dxl:TestExpr/>
                    <dxl:ParamList>
                      <dxl:Param ColId="18" ColName="a" TypeMdid="0.23.1.0"/>
                    </dxl:ParamList>
                    <dxl:Result>
                      <dxl:Properties>
                        <dxl:Cost StartupCost="0" TotalCost="431.329208" Rows="8.533334" Width="4"/>
                      </dxl:Properties>
                      <dxl:ProjList>
                        <dxl:ProjElem ColId="74" Alias="?column?">
                          <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
                        </dxl:ProjElem>
                      </dxl:ProjList>
                      <dxl:Filter/>
                      <dxl:OneTimeFilter/>
                      <dxl:Result>
                        <dxl:Properties>
                          <dxl:Cost StartupCost="0" TotalCost="431.329197" Rows="8.533334" Width="1"/>
                        </dxl:Properties>
                        <dxl:ProjList/>
                        <dxl:Filter>
                          <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.670.1.0">
                            <dxl:Cast TypeMdid="0.701.1.0" FuncId="0.316.1.0">
                              <dxl:Ident ColId="18" ColName="a" TypeMdid="0.23.1.0"/>
                            </dxl:Cast>
                            <dxl:FuncExpr FuncId="0.1598.1.0" FuncRetSet="false" TypeMdid="0.701.1.0"/>
                          </dxl:Comparison>
                        </dxl:Filter>
                        <dxl:OneTimeFilter>
                          <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                            <dxl:Ident ColId="18" ColName="a" TypeMdid="0.23.1.0"/>
                            <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
                          </dxl:Comparison>
                        </dxl:OneTimeFilter>
                        <dxl:Materialize Eager="true">
                          <dxl:Properties>
                            <dxl:Cost StartupCost="0" TotalCost="431.000197" Rows="30.000003" Width="1"/>
                          </dxl:Properties>
                          <dxl:ProjList/>
                          <dxl:Filter/>
                          <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
                            <dxl:Properties>
                              <dxl:Cost StartupCost="0" TotalCost="431.000187" Rows="30.000003" Width="1"/>
                            </dxl:Properties>
                            <dxl:ProjList/>
                            <dxl:Filter/>
                            <dxl:SortingColumnList/>
                            <dxl:Result>
                              <dxl:Properties>
                                <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="10.000001" Width="1"/>
                              </dxl:Properties>
                              <dxl:ProjList/>
                              <dxl:Filter/>
                              <dxl:OneTimeFilter/>
                              <dxl:CTEConsumer CTEId="0" Columns="56,57">
                                <dxl:Properties>
                                  <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="10.000001" Width="1"/>
                                </dxl:Properties>
                                <dxl:ProjList>
                                  <dxl:ProjElem ColId="56" Alias="a">
                                    <dxl:Ident ColId="56" ColName="a" TypeMdid="0.23.1.0"/>
                                  </dxl:ProjElem>
                                  <dxl:ProjElem ColId="57" Alias="b">
                                    <dxl:Ident ColId="57" ColName="b" TypeMdid="0.23.1.0"/>
                                  </dxl:ProjElem>
                                </dxl:ProjList>
                              </dxl:CTEConsumer>
                            </dxl:Result>
                          </dxl:BroadcastMotion>
                        </dxl:Materialize>
                      </dxl:Result>
                    </dxl:Result>
                  </dxl:SubPlan>
                  <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
                </dxl:Coalesce>
              </dxl:ProjElem>
              <dxl:ProjElem ColId="94" Alias="?column?">
                <dxl:SubPlan TypeMdid="0.23.1.0" SubPlanType="ScalarSubPlan">
                  <dxl:TestExpr/>
                  <dxl:ParamList>
                    <dxl:Param ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:ParamList>
                  <dxl:Result>
                    <dxl:Properties>
                      <dxl:Cost StartupCost="0" TotalCost="431.658788" Rows="3.000000" Width="4"/>
                    </dxl:Properties>
                    <dxl:ProjList>
                      <dxl:ProjElem ColId="77" Alias="b">
                        <dxl:Ident ColId="77" ColName="b" TypeMdid="0.23.1.0"/>
                      </dxl:ProjElem>
                    </dxl:ProjList>
                    <dxl:Filter>
                      <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                        <dxl:Ident ColId="77" ColName="b" TypeMdid="0.23.1.0"/>
                        <dxl:Ident ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                      </dxl:Comparison>
                    </dxl:Filter>
                    <dxl:OneTimeFilter/>
                    <dxl:Materialize Eager="true">
                      <dxl:Properties>
                        <dxl:Cost StartupCost="0" TotalCost="431.000788" Rows="30.000003" Width="4"/>
                      </dxl:Properties>
                      <dxl:ProjList>
                        <dxl:ProjElem ColId="77" Alias="b">
                          <dxl:Ident ColId="77" ColName="b" TypeMdid="0.23.1.0"/>
                        </dxl:ProjElem>
                      </dxl:ProjList>
                      <dxl:Filter/>
                      <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
                        <dxl:Properties>
                          <dxl:Cost StartupCost="0" TotalCost="431.000748" Rows="30.000003" Width="4"/>
                        </dxl:Properties>
                        <dxl:ProjList>
                          <dxl:ProjElem ColId="77" Alias="b">
                            <dxl:Ident ColId="77" ColName="b" TypeMdid="0.23.1.0"/>
                          </dxl:ProjElem>
                        </dxl:ProjList>
                        <dxl:Filter/>
                        <dxl:SortingColumnList/>
                        <dxl:Result>
                          <dxl:Properties>
                            <dxl:Cost StartupCost="0" TotalCost="431.000032" Rows="10.000001" Width="4"/>
                          </dxl:Properties>
                          <dxl:ProjList>
                            <dxl:ProjElem ColId="77" Alias="b">
                              <dxl:Ident ColId="77" ColName="b" TypeMdid="0.23.1.0"/>
                            </dxl:ProjElem>
                          </dxl:ProjList>
                          <dxl:Filter/>
                          <dxl:OneTimeFilter/>
                          <dxl:CTEConsumer CTEId="0" Columns="76,77">
                            <dxl:Properties>
                              <dxl:Cost StartupCost="0" TotalCost="431.000032" Rows="10.000001" Width="4"/>
                            </dxl:Properties>
                            <dxl:ProjList>
                              <dxl:ProjElem ColId="76" Alias="a">
                                <dxl:Ident ColId="76" ColName="a" TypeMdid="0.23.1.0"/>
                              </dxl:ProjElem>
                              <dxl:ProjElem ColId="77" Alias="b">
                                <dxl:Ident ColId="77" ColName="b" TypeMdid="0.23.1.0"/>
                              </dxl:ProjElem>
                            </dxl:ProjList>
                          </dxl:CTEConsumer>
                        </dxl:Result>
                      </dxl:BroadcastMotion>
                    </dxl:Materialize>
                  </dxl:Result>
                </dxl:SubPlan>
              </dxl:ProjElem>
            </dxl:ProjList>
            <dxl:Filter/>
            <dxl:OneTimeFilter/>
            <dxl:HashJoin JoinType="Inner">
              <dxl:Properties>
                <dxl:Cost StartupCost="0" TotalCost="862.001711" Rows="10.000001" Width="12"/>
              </dxl:Properties>
              <dxl:ProjList>
                <dxl:ProjElem ColId="18" Alias="a">
                  <dxl:Ident ColId="18" ColName="a" TypeMdid="0.23.1.0"/>
                </dxl:ProjElem>
                <dxl:ProjElem ColId="19" Alias="b">
                  <dxl:Ident ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                </dxl:ProjElem>
                <dxl:ProjElem ColId="28" Alias="b">
                  <dxl:Ident ColId="28" ColName="b" TypeMdid="0.23.1.0"/>
                </dxl:ProjElem>
              </dxl:ProjList>
              <dxl:Filter/>
              <dxl:JoinFilter/>
              <dxl:HashCondList>
                <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
                  <dxl:Ident ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                  <dxl:Ident ColId="28" ColName="b" TypeMdid="0.23.1.0"/>
                </dxl:Comparison>
              </dxl:HashCondList>
              <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
                <dxl:Properties>
                  <dxl:Cost StartupCost="0" TotalCost="431.000203" Rows="10.000000" Width="8"/>
                </dxl:Properties>
                <dxl:ProjList>
                  <dxl:ProjElem ColId="18" Alias="a">
                    <dxl:Ident ColId="18" ColName="a" TypeMdid="0.23.1.0"/>
                  </dxl:ProjElem>
                  <dxl:ProjElem ColId="19" Alias="b">
                    <dxl:Ident ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:ProjElem>
                </dxl:ProjList>
                <dxl:Filter/>
                <dxl:SortingColumnList/>
                <dxl:HashExprList>
                  <dxl:HashExpr>
                    <dxl:Ident ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:HashExpr>
                </dxl:HashExprList>
                <dxl:TableScan>
                  <dxl:Properties>
                    <dxl:Cost StartupCost="0" TotalCost="431.000070" Rows="10.000000" Width="8"/>
                  </dxl:Properties>
                  <dxl:ProjList>
                    <dxl:ProjElem ColId="18" Alias="a">
                      <dxl:Ident ColId="18" ColName="a" TypeMdid="0.23.1.0"/>
                    </dxl:ProjElem>
                    <dxl:ProjElem ColId="19" Alias="b">
                      <dxl:Ident ColId="19" ColName="b" TypeMdid="0.23.1.0"/>
                    </dxl:ProjElem>
                  </dxl:ProjList>
                  <dxl:Filter/>
                  <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
                    <dxl:Columns>
                      <dxl:Column ColId="18" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                      <dxl:Column ColId="19" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
                      <dxl:Column ColId="20" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                      <dxl:Column ColId="21" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                      <dxl:Column ColId="22" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                      <dxl:Column ColId="23" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                      <dxl:Column ColId="24" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                      <dxl:Column ColId="25" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                      <dxl:Column ColId="26" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                    </dxl:Columns>
                  </dxl:TableDescriptor>
                </dxl:TableScan>
              </dxl:RedistributeMotion>
              <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
                <dxl:Properties>
                  <dxl:Cost StartupCost="0" TotalCost="431.000136" Rows="10.000000" Width="4"/>
                </dxl:Properties>
                <dxl:ProjList>
                  <dxl:ProjElem ColId="28" Alias="b">
                    <dxl:Ident ColId="28" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:ProjElem>
                </dxl:ProjList>
                <dxl:Filter/>
                <dxl:SortingColumnList/>
                <dxl:HashExprList>
                  <dxl:HashExpr>
                    <dxl:Ident ColId="28" ColName="b" TypeMdid="0.23.1.0"/>
                  </dxl:HashExpr>
                </dxl:HashExprList>
                <dxl:TableScan>
                  <dxl:Properties>
                    <dxl:Cost StartupCost="0" TotalCost="431.000070" Rows="10.000000" Width="4"/>
                  </dxl:Properties>
                  <dxl:ProjList>
                    <dxl:ProjElem ColId="28" Alias="b">
                      <dxl:Ident ColId="28" ColName="b" TypeMdid="0.23.1.0"/>
                    </dxl:ProjElem>
                  </dxl:ProjList>
                  <dxl:Filter/>
                  <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
                    <dxl:Columns>
                      <dxl:Column ColId="27" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
                      <dxl:Column ColId="28" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
                      <dxl:Column ColId="29" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
                      <dxl:Column ColId="30" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
                      <dxl:Column ColId="31" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
                      <dxl:Column ColId="32" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
                      <dxl:Column ColId="33" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
                      <dxl:Column ColId="34" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
                      <dxl:Column ColId="35" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
                    </dxl:Columns>
                  </dxl:TableDescriptor>
                </dxl:TableScan>
              </dxl:RedistributeMotion>
            </dxl:HashJoin>
          </dxl:Result>
        </dxl:Sequence>
      </dxl:GatherMotion>
    </dxl:Plan>
  </dxl:Thread>
</dxl:DXLMessage>
